home *** CD-ROM | disk | FTP | other *** search
/ ASME's Mechanical Engine…ing Toolkit 1997 December / ASME's Mechanical Engineering Toolkit 1997 December.iso / c_lang / inppls.lzh / README.DOC < prev   
Encoding:
Text File  |  1987-06-23  |  3.3 KB  |  95 lines

  1. INPPLS.C           Written by:   Steve Higgins
  2.                                  1660 Hillcrest Ln.
  3.                                  Aston, PA 19014
  4. Written for MSC 4.0
  5.  
  6.   Inppls is an input routine for 'C'. The input routine allows each key
  7. stroke to be masked. The source for inppls has been included. You may do
  8. what ever you want with it. If you have any comments feel free to contact
  9. me.
  10.   For extra help in creating data entry screens try down loading FORMGEN.
  11. This program will allow you to paint a data entry screen and then it will
  12. create the source code for you.
  13.  
  14.  
  15. Calling sequence:
  16.  
  17.   inppls(row, col, attr, storage, options, mask, keys);
  18.  
  19.     row     => Starting row for input line.
  20.     col     => Starting column for input line.
  21.     attr    => Color attribute for input line.
  22.     storgae => May be either char array or int (for now).
  23.     options => Char string containg any of the below options.
  24.                  Pch => Pad character. Default is underline.
  25.                  Hch => Hidden field. Will use ch as display char.
  26.                  l => Left justify field when enter is pressed.
  27.                  L => Left entry.
  28.                  r => Right justify field when enter is pressed. (default)
  29.                  R => Right entry. (default)
  30.                  N => Numeric input.
  31.                  D => Display field only.
  32.     mask    => Char string contaning any (and many) of the below options.
  33.                  1 => That char is numeric input only.
  34.                  2 => That char is alpha only.
  35.                  3 => That char is either alpha or numeric.
  36.                  4 => Any thing can be typed for that char.
  37.        (ascii 255)n,ch => n = number of occurences of ch. (see example 4)
  38.                 ch => If ch is none of the above nothing will be typed
  39.                       at that position. (see examples)
  40.     keys    => Char string contaning scan codes of keys that will exit
  41.                the input routine on that field.
  42.  
  43. Examples:
  44.  
  45. ex1.
  46.      char phone[11];
  47.      inppls(12,12,14,phone,"","(111) 111-1111","");
  48.  
  49.      /* start input at row 12, col 12, in color yellow */
  50.      /* will only allow typing on numeric fields in the mask */
  51.  
  52. ex2.
  53.      int dollar;
  54.      inppls(10,1,7,&dollar,"NLl","$11.11","");
  55.  
  56.      /** "NLl" - N declares numeric field.
  57.                - L left entry.
  58.                - l left justify.            */
  59.  
  60. ex3.
  61.      char string[21];
  62.      inppls(10,10,76,string,"","44444444444444444444","");
  63.  
  64.      /* input a string of any 20 characters
  65.          - scan code for ESC key. If esc is pressed while on this field
  66.             the routine will return that code.
  67.  
  68. ex4.
  69.      char string[21];
  70.      inppls(10,10,76,string,""," 20,4","");
  71.                                 ^
  72.                                 An ascii 255. Used Alt + numeric keypad.
  73.  
  74.      /* exact same as above !!! */
  75.  
  76. ex5.
  77.      char mix[9];
  78.      inppls(10,10,4,mix,"P@l","11223344",";");
  79.  
  80.      /** Pad with @ instead of default _
  81.          Allow some of each mask type to be entered
  82.          Allow exit on ESC () and F1 (;).             **/
  83.  
  84. ex6.
  85.      char hidden[5];
  86.      inppls(10,10,10,hidden,"H#","4444","");
  87.  
  88.      /** Use # instead of displaying the actual key **/
  89.  
  90. ex7.
  91.       char date[7];
  92.       inppls(1,1,4,date,"D","11/11/11","");
  93.  
  94.       /** Just display the date using the mask. NO INPUT **/
  95.